#pragma once

#include <iostream>
#include <unistd.h>
#include <fcntl.h>
#include <cstring>
#include <cerrno>
class Util
{
public:
    static bool SetNonBlock(int fd)
    {
        int flag = fcntl(fd, F_GETFL); // 获取文件描述符当前已有的状态标志位
        if (flag < 0)
            return false;
        fcntl(fd, F_SETFL, flag | O_NONBLOCK); // 将已有的flag 和 O_NONBLOCK一起设置回fd中
        return true;
    }
};
